<?php
try{
    include '../ini.php';
    include '../classes_user/xl_orders.php';
    $dt_xl_orders=new xl_orders;    
    if(empty($_POST['data']['name'])){
        throw new Exception('Tên không được để trống. Vui lòng nhập tên');
    }
    $_POST['data']['name']=$dt_xl_security->xss_clean($_POST['data']['name']);
    if(!filter_var($_POST['data']['email'],FILTER_VALIDATE_EMAIL)){
        throw new Exception('Email của bạn chưa  hợp lệ');
    }
    $_POST['data']['email']=$dt_xl_security->xss_clean($_POST['data']['email']);
   
    if(empty($_POST['data']['birthday'])){
        throw new Exception('Vui lòng bạn chọn ngày sinh');
    }
    $_POST['data']['birthday']=$dt_xl_security->xss_clean($_POST['data']['birthday']);
    if($_POST['data']['gender']!=0 && $_POST['data']['gender']!=1){
        throw new Exception('Vui lòng bạn chọn lại giới tính');
    }
    if(empty($_POST['data']['address'])){
        throw new Exception('Vui lòng nhập địa chỉ để giao dịch với bạn');
    }
    $_POST['data']['address']=$dt_xl_security->xss_clean($_POST['data']['address']);
    if(!is_numeric($_POST['data']['phone']) || (strlen($_POST['data']['phone']) > 12) || (strlen($_POST['data']['phone']) < 10)){
        throw new Exception('Sô điện thoại không hợp lệ');
    }
    $_POST['data']['phone']=$dt_xl_security->removeSQLI($_POST['data']['phone']);
    if($_POST['data']['shipping_method']!=0 && $_POST['data']['shipping_method']!=1){
        throw new Exception('Phương thức thanh toán không đúng');
    }
    if(!isset($_POST['agree'])){
        $_POST['agree']=0;
    }
    if($_POST['agree'] != 1){
        $_POST['data']['comment']=$_POST['data']['address'];
    }
    $_POST['data']['comment']=$dt_xl_security->xss_clean($_POST['data']['comment']);
    $_POST['agree']=$dt_xl_security->removeSQLI($_POST['agree']);
    if(isset($_SESSION['cart'])){
        $_POST['cart']=$_SESSION['cart'];
        $_POST['data']['sum_of_money']=$_SESSION['sum_of_money'];
    }
    $_POST['data']['code_active']=md5($_POST['data']['email'].rand(10000,99999));
    $_POST['data']['date_added']=date('Y-m-d H:i:s',time());
    $_POST['data']['date_modified']=date('Y-m-d H:i:s',time());
    $_POST['data']['checkout']=0;
    $data=$_POST['data'];
    $checkout_finish=$dt_xl_orders->insert_order($data);
    if($checkout_finish === FALSE){
        throw new Exception('Đã xảy ra lỗi trong quá trình thanh toán.');
    }
    $check_name_order=$dt_xl_orders->check_name_order($data['name']);
    if($check_name_order == NULL){
        throw new Exception('Không có khách hàng này');
    }
    $_POST['data_order_product']['id_order']=$check_name_order['id'];
    foreach($_POST['cart'] as $key=>$value){
        $check_product=$dt_xl_product->list_product($key);
        $_POST['data_order_product']['id_product']=$check_product[0]['id'];
        if($check_product == NULL){
            throw new Exception('Không có loại mã này');
        }
        foreach($value as $k=>$v){
             $_POST['data_order_product']['name']=$v['name'];
             $_POST['data_order_product']['size']=$v['size'];
             $_POST['data_order_product']['quantity']=$v['quantity'];
             $_POST['data_order_product']['price']=$v['price'];
             $_POST['data_order_product']['into_money']=$v['into_money'];
             $data_order_product[]=$_POST['data_order_product'];
        }
    }
    foreach($data_order_product as $key_order=>$v_order){
        $orders_product=$dt_xl_orders->insert_order_product($v_order);
    }
    if($orders_product === FALSE){
        throw new Exception('Xảy ra lỗi quá trình xử ý đơn hàng');
    }
    
    $order_user=$dt_xl_orders->order_user($_POST['data']['email']);
    if($order_user == NULL){
            throw new Exception('Đơn hàng không tồn tại');
    }
    $list_order_detail=$dt_xl_orders->list_order_detail($order_user['id']);
    if($list_order_detail == NULL){
        throw new Exception('Danh sách đơn hàng không tồn tại');
    }
    $order='<table width="766" border="1" >';
   
    $order.='<tr align="center">
             	<td width="127">Hình ảnh</td>
                <td width="190">Tên sản phẩm</td>
                <td width="87">Kích thước</td>
                <td width="76">Số lương</td>
                <td width="133">Giá sản phẩm</td>
                <td width="113">Tổng </td>
                <td width="113">Ngày mua hàng </td>
            </tr>';
             foreach($list_order_detail as $detail){
    $order.='<tr align="center">';
    
        $order.='<td width="120">'.'<img style="max-width:50px;" src="'.DOMAIN.'/upload/product/'.date_format(date_create($detail['day_time']),'m-Y').'/'.$detail['image'].'"'.'/></td>';
        $order.='<td height="51">'.$detail['name'].'</td>';
        $order.='<td>'.$detail['model'].'</td>';
        $order.='<td>'.$detail['quantity'].'</td>';
        $order.='<td>'.number_format($detail['price']).'VNĐ</td>';
        $order.='<td>'.number_format($detail['total']).'VNĐ</td>';
        $order.='<td>'.$detail['date_added'].'</td>';
    
    $order.='</tr>';
     }
    $order.='<tr align="right">';
    $order.='<td colspan="7">Tổng tiền: '.number_format($order_user['sum_money']).'VNĐ</td>';
    $order.='</tr>';
    $order.='</table>';
    $to_email=$order_user['email'];
    $to_name=$order_user['user_name'];
    $subject='Đơn Hàng';
    $content='Xin chào bạn :'.$to_name.'<br />';
    $content.='Đầu tiên xin cảm ơn bạn đã đặt hàng của website shopbaby.vn. Chúng tôi sẽ giao hàng cho bạn trong thời gian sớm nhất cho bạn.'.'<br />'.'Đây là thông tin chi tiết đơn hàng của bạn :'.'<br /><br />';
    $content.='----------------------------'.'<br />';
    $content.='- Họ tên :'.$order_user['user_name'].'<br />';
    $content.='- Ngày Sinh :'.$order_user['birthday'].'<br />';
    if($order_user['gender'] == 0){
        $content.='- Giới tính : Nam'.'<br />';
    }else{
        $content.='- Giới tính : Nữ'.'<br />';  
    }
    $content.='- Địa chỉ :'.$order_user['address'].'<br />';
    $content.='- Số điện thoại :'.$order_user['phone'].'<br />';
    $content.='- Địa chỉ giao hàng :'.$order_user['delivery_locations'].'<br />';
    $content.='- Chi tiết đơn hàng của bạn :'.'<br /><br />';
    $content.=$order;
    $content.='Đơn hàng quá khách đã được xác nhận. Cảm ơn quý khách đã mua hàng tại website ShopBay. Quý khách vui lòng kích đường dẫn bên dưới để xác nhận đơn hàng của bạn: <br /><br />';
    $content.=DOMAIN.'kich-hoat/don-hang/'.$_POST['data']['code_active'].'<br />';
    $content.='Đơn hàng quá khách đã được xác nhận. Cảm ơn quý khách đã mua hàng tại website ShopBay. Chúng tôi xin cảm ơn sự ủng hộ của quý khách. Hẹn gặp lại quý khách lần sau.<br /> Xin Cảm Ơn <br />';
    $content.='----------------------------';
    $from_name='Shop Baby';
    send_gmail($to_email,$to_name,$subject,$content,$from_name);
    unset($_SESSION['cart']);
    $dbh=NULL;
    if(isset($_SESSION['login_user'])){
        $_SESSION['msg']='Cảm ơn bạn đã mua hàng.Chúng tôi sẽ kiểm tra đơn hàng của bạn và thông báo qua gmail của bạn. Bạn có thể vô giỏ hàng tài khoản của bạn để xem thông tin về sản phẩm';
    }else{
        $_SESSION['msg']='Cảm ơn bạn đã mua hàng.Chúng tôi sẽ kiểm tra lại thông tin và gởi gmail cho bạn trong 1h nữa. Hoặc bạn có thể đăng kí thành viên để xem giỏ hàng của mình với gmail bạn vừa mua hàng.';
    }
    $_SESSION['type_msg']='success';
    header('Location: /');
}catch(Exception $e){
    $dbh=NULL;
    $_SESSION['msg']=$e->getMessage();
    $_SESSION['type_msg']='error';
    $_SESSION['data']=$_POST['data'];
    header('Location: /orders/payment.php');
}